home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 9 / Night Owl CD-ROM (NOPV9) (Night Owl Publisher) (1993).ISO / 015a / morton.zip / ZAPCODE.EXE / ZAPCODE.DOC < prev   
Text File  |  1991-05-01  |  76KB  |  1,947 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.         +--------------------------------------------------------------+
  10.         |                                                              |
  11.         |                                                              |
  12.         |                                 (tm)                         |
  13.         |                           ZAPCODE                            |
  14.         |                                                              |
  15.         |                              /                               |
  16.         |                             /_                               |
  17.         |                               /                              |
  18.         |                              /                               |
  19.         |                                                              |
  20.         |                 Professional Printer Control                 |
  21.         |                                                              |
  22.         |              Version 3.4 - Released May 1, 1991              |
  23.         |                                                              |
  24.         |          (C) Copyright 1990, 1991 Robert L. Morton           |
  25.         |                                                              |
  26.         |                   Morton Utilities, Intl.                    |
  27.         |                    81-887 Tournament Way                     |
  28.         |                       Indio, CA 92201                        |
  29.         |                       (619) 347-7563                         |
  30.         |                                                              |
  31.         |                    Compuserve 70132,3707                     |
  32.         |                                                              |
  33.         |                     All Rights Reserved                      |
  34.         |                                                              |
  35.         |                                                              |
  36.         |                                                              |
  37.         +--------------------------------------------------------------+
  38.  
  39.  
  40.                                _______
  41.                           ____|__     |               (tm)
  42.                        --|       |    |-------------------
  43.                          |   ____|__  |  Association of
  44.                          |  |       |_|  Shareware
  45.                          |__|   o   |    Professionals
  46.                        -----|   |   |---------------------
  47.                             |___|___|    MEMBER
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.         WHAT'S NEW?
  64.  
  65.         Loads of new printer drivers!
  66.  
  67.  
  68.  
  69.  
  70.  
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.  
  78.  
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.         COPYRIGHT NOTICE
  123.  
  124.         This documentation and the software included with it as described
  125.         in this documentation are copyrighted by Morton Utilities, Morton
  126.         International. Except as described in the following license
  127.         agreement, this document may not, in whole or in part, be
  128.         reproduced, photocopied, transmitted, transcribed, stored on a
  129.         retrieval system or translated into any language or computer
  130.         language, in any form or by any means, electronic, mechanical,
  131.         magnetic, optical, chemical, manual or otherwise, without the
  132.         prior written consent of Morton Utilities, Morton International.
  133.         Altering, modifying or adapting this software or documentation,
  134.         including, but not limited to, translating, decompiling,
  135.         disassembling, or creating derivative works is prohibited.
  136.  
  137.         DISCLAIMER
  138.  
  139.         Morton Utilities, Morton International, makes no warranties or
  140.         representation, either express or implied, with respect to this
  141.         software or documentation, including their quality, performance,
  142.         merchantability, or fitness for a particular purpose. In no
  143.         event will Morton Utilities, Morton International, be liable for
  144.         direct, indirect, special, incidental, or consequential damages
  145.         arising out of the use of or inability to use this software or
  146.         documentation.
  147.  
  148.         LICENSE AGREEMENT
  149.  
  150.         You are licensed to use this software on a trial basis for a
  151.         period of fourteen days. If after the trial period, you wish to
  152.         continue using ZAPCODE, you must purchase a permanent license
  153.         from Morton Utilities, Morton International. (A permanent
  154.         license costs only $19.95 - See section entitled "Purchasing
  155.         ZAPCODE" for details.)
  156.  
  157.         You are granted a limited license to copy ZAPCODE only for the
  158.         trial use of others subject to the agreement described above,
  159.         and also the following:
  160.  
  161.         o  ZAPCODE must be copied in unmodified form, complete with the
  162.            following files and only the following files:
  163.  
  164.            ZAPCODE.COM   -  ZAPCODE program
  165.            ZAPCODE.DOC   -  ZAPCODE program documentation
  166.            INVOICE.DOC   -  Invoice for permanent license
  167.            ASP.DOC       -  Association of Shareware Professionals Info.
  168.            *.PMF         -  All printer drivers
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.         o  No fee, charge or other compensation may be accepted or
  182.            requested by anyone without express written consent from
  183.            Morton Utilities, Morton International.
  184.  
  185.         o  ZAPCODE may not be distributed in conjunction with any other
  186.            product or service without a specific license to do so from
  187.            Morton Utilities, Morton International.
  188.  
  189.         Electronic bulletin board operators (Sysops) may post ZAPCODE
  190.         for downloading by their users without written consent only when
  191.         the above conditions are met. A fee may be charged for access to
  192.         the BBS as long as no specific fee is charged for access to the
  193.         ZAPCODE files.
  194.  
  195.         ZAPCODE is distributed in a self-unarcing format. If your BBS
  196.         uses a specific archive program for distributing programs, you
  197.         may re-archive the ZAPCODE files using it. However, ONLY the
  198.         files described above may be placed in the ZAPCODE archive.
  199.  
  200.         Disk vendors and other Shareware distribution companies which
  201.         market diskettes containing Shareware programs for profit MUST
  202.         obtain written consent from Morton Utilities, Morton
  203.         International. Permission is usually given; please write for
  204.         details.
  205.  
  206.         You are not allowed to modify this software under any
  207.         conditions. You are, however, encouraged to create and
  208.         distribute your own printer drivers using the extension "PMF".
  209.         These may not, however, be placed in the ZAPCODE archive.
  210.  
  211.         TRADEMARKS
  212.  
  213.         ZAPCODE is a trademark of Morton Utilities, Morton
  214.         International.
  215.  
  216.         IBM PC, XT, AT, and PS/2 are registered trademarks of
  217.         International Business Machines.
  218.  
  219.         MS-DOS is a registered trademark of Microsoft Corporation.
  220.  
  221.         PC-DOS is a trademark of International Business Machines.
  222.  
  223.         EDLIN is a trademark of Microsoft Corporation.
  224.  
  225.         LOTUS 1-2-3 is a registered trademark of Lotus Development
  226.         corporation.
  227.  
  228.  
  229.  
  230.  
  231.  
  232.  
  233.  
  234.  
  235.  
  236.  
  237.  
  238.  
  239.  
  240.         +--------------------------------------------------------------+
  241.         |                       Table Of Contents                      |
  242.         +--------------------------------------------------------------+
  243.  
  244.  
  245.         Introducing ZAPCODE .........................................  1
  246.               What is ZAPCODE? ......................................  1
  247.               ZAPCODE Files .........................................  2
  248.               System Requirements ...................................  2
  249.  
  250.         Purchasing ZAPCODE ..........................................  3
  251.  
  252.         Running ZAPCODE .............................................  4
  253.               Command Line Switches .................................  5
  254.  
  255.         Using ZAPCODE ...............................................  6
  256.               Sending Printer Codes Manually ........................  7
  257.               The "Enter Missing Parameter(s)" (EMP) Window .........  7
  258.  
  259.         Using The PMF Editor ........................................  8
  260.               Edit Printer Code .....................................  8
  261.                     Adding an EMP Window ............................  9
  262.                     Editing an EMP Window ........................... 10
  263.                     Deleting an EMP Window .......................... 10
  264.               Add Printer Code ...................................... 10
  265.               Delete Printer Code ................................... 10
  266.               Move Printer Code ..................................... 11
  267.               Configure Other Options ............................... 11
  268.                     Printer Name .................................... 11
  269.                     Port Setup ...................................... 11
  270.                     Printer Reset Codes ............................. 12
  271.                     Activation Hotkey ............................... 12
  272.                     Window Colors ................................... 12
  273.                     Keyboard Setup .................................. 13
  274.  
  275.         The Printer Make File (PMF) ................................. 17
  276.               PMF Syntax and Guidelines ............................. 17
  277.               Example PMF ........................................... 18
  278.  
  279.         APPENDIX A - PMF Commands ................................... 19
  280.  
  281.         APPENDIX B - Shift Mask & Hotkey Tables ..................... 23
  282.  
  283.         APPENDIX C - Calculating Window Colors ...................... 25
  284.  
  285.         APPENDIX D - Special Keys Table ............................. 27
  286.  
  287.  
  288.  
  289.  
  290.  
  291.  
  292.  
  293.  
  294.  
  295.  
  296.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  1
  297.  
  298.  
  299.         +--------------------------------------------------------------+
  300.         |                     Introducing ZAPCODE                      |
  301.         +--------------------------------------------------------------+
  302.  
  303.         What is ZAPCODE?
  304.         ----------------
  305.  
  306.         ZAPCODE, simply put, is a printer control utility. With it, you
  307.         can send control codes to your printer to activate or deactivate
  308.         any of its options and features. Pop-up ZAPCODE at any time to,
  309.         for example, reset your printer, turn on condensed print, or
  310.         advance the page. ZAPCODE can also be used to automatically
  311.         enter printer codes into your word processor, spreadsheet, or
  312.         any other program. This is great for word processors that don't
  313.         support all of your printer's features but allow you to embed
  314.         printer control codes inside your documents. Simply pop-up
  315.         ZAPCODE, select the desired printer option(s), and then let
  316.         ZAPCODE enter the printer codes for you, just as if you had
  317.         typed them at the keyboard. ZAPCODE can even be used to print
  318.         envelopes, as a dialing directory, and even as a crude keyboard
  319.         macro program. ZAPCODE is ideal for all types of printers
  320.         including dot-matrix, laser, and even plotters. Additional
  321.         features include:
  322.  
  323.         o  Stand-alone running for those times when memory residency
  324.            might not be desirable.
  325.  
  326.         o  Support for any parallel printer attached to LPT1 to LPT3,
  327.            and any serial printer attached to COM1 to COM4.
  328.  
  329.         o  Completely customizable printer drivers. You can easily
  330.            modify the included printer drivers to suit any desired
  331.            configuration, or even create your own.
  332.  
  333.         o  Memory resident activation over most applications, including
  334.            those graphics-based.
  335.  
  336.         o  Customizable window colors and activation hotkey.
  337.  
  338.         o  Capability of multiple installations for those systems which
  339.            require support for more than one printer.
  340.  
  341.         o  Uninstallation of memory resident copies for those times when
  342.            the extra RAM is needed.
  343.  
  344.  
  345.  
  346.  
  347.  
  348.  
  349.  
  350.  
  351.  
  352.  
  353.  
  354.  
  355.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  2
  356.  
  357.  
  358.         ZAPCODE Files
  359.         -------------
  360.  
  361.         ZAPCODE consists of the following files:
  362.  
  363.            ZAPCODE.COM   -  ZAPCODE program
  364.            ZAPCODE.DOC   -  ZAPCODE program documentation
  365.            INVOICE.DOC   -  Invoice for permanent license
  366.            ASP.DOC       -  Association of Shareware Professionals Info.
  367.            *.PMF         -  Printer drivers
  368.  
  369.         All printer drivers end in the extension "PMF" (Printer Make
  370.         File). Printer drivers have been included for some of the more
  371.         popular printers. If your printer is not yet supported, you can
  372.         easily build your own driver or customize one of the given. This
  373.         will be covered shortly in the section "Using The PMF Editor".
  374.  
  375.         System Requirements
  376.         -------------------
  377.  
  378.         To use ZAPCODE you need:
  379.  
  380.         o  IBM PC, XT, AT, PS/2, or compatible computer
  381.  
  382.         o  A parallel or serial printer
  383.  
  384.         o  PC-DOS or MS-DOS version 2.0 or later
  385.  
  386.         You'll also need at least 64K available memory to use ZAPCODE in
  387.         stand-alone mode. 128K is required to use the PMF Editor. When
  388.         installed in memory, ZAPCODE uses approximately 17K. However,
  389.         depending on the size of the printer driver, an additional 10K
  390.         is usually needed.
  391.  
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  
  401.  
  402.  
  403.  
  404.  
  405.  
  406.  
  407.  
  408.  
  409.  
  410.  
  411.  
  412.  
  413.  
  414.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  3
  415.  
  416.  
  417.         +--------------------------------------------------------------+
  418.         |                      Purchasing ZAPCODE                      |
  419.         +--------------------------------------------------------------+
  420.  
  421.         ZAPCODE is distributed under the Shareware marketing system. The
  422.         Shareware concept allows you, the user, to use a program on a
  423.         trial basis to determine if it meets your needs. If you find the
  424.         program useful and wish to continue using it, you are required
  425.         to pay a license or registration fee to the author.
  426.  
  427.         If you received ZAPCODE through a distribution service and paid
  428.         a small fee (usually $3 to $5), this does not constitute payment
  429.         for ZAPCODE. You have simply paid for the distribution service.
  430.         The $3.00 or $5.00 or whatever pays for the diskette,
  431.         duplications and handling and does NOT constitute payment for
  432.         the programs contained on the diskette.
  433.  
  434.         ZAPCODE license and registration costs $19.95. The file
  435.         "INVOICE.DOC" contains an invoice which you may print and use
  436.         for this purpose. Registering ZAPCODE gets you:
  437.  
  438.         1. The latest version of ZAPCODE without the Shareware notice.
  439.         2. A professionally printed/bound 33 page manual.
  440.         3. All of the latest printer drivers. We're always creating
  441.            new drivers for more printers. If yours isn't currently
  442.            supported, we'll create it for you FREE. Just mention it to
  443.            us on the invoice.
  444.         4. Six months support plus we'll notify you of any program
  445.            updates and new products.
  446.  
  447.         The Shareware system is dependent upon honest people. If you use
  448.         a Shareware program and have not registered with the author
  449.         after the evaluation period, you are helping to destroy the
  450.         viability of the Shareware concept. If you appreciate the
  451.         ability to try software, before you buy it, then we encourage
  452.         you to register EVERY Shareware program you use. Registration of
  453.         Shareware products ensures the existence of quality, low-cost
  454.         software.
  455.  
  456.  
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  
  467.  
  468.  
  469.  
  470.  
  471.  
  472.  
  473.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  4
  474.  
  475.  
  476.         +--------------------------------------------------------------+
  477.         |                       Running ZAPCODE                        |
  478.         +--------------------------------------------------------------+
  479.  
  480.         To get ZAPCODE up and running, simply log into the drive and
  481.         directory containing ZAPCODE and type:
  482.  
  483.                                 ZAPCODE <Enter>
  484.  
  485.         A window will be displayed containing a list of all printer
  486.         drivers in the current directory. Use the following keys:
  487.  
  488.                 UpArrow   -   Move selection bar up one file
  489.                 DnArrow   -   Move selection bar down one file
  490.                 PgUp      -   Move selection bar up one page
  491.                 PgDn      -   Move selection bar down one page
  492.                 Home      -   Move selection bar to first file
  493.                 End       -   Move selection bar to last file
  494.                 Enter     -   Use the selected PMF in stand-alone mode
  495.                 I         -   Install the selected PMF in memory
  496.                 U         -   Uninstall last PMF installed in memory
  497.                 E         -   Edit the selected PMF
  498.                 A         -   Add/create a new PMF
  499.                 Esc       -   Exit
  500.  
  501.         Use the UpArrow, DnArrow, PgUp, PgDn, Home, and End keys to
  502.         select a PMF.
  503.  
  504.         Press the Enter key to use the selected PMF in stand-alone mode.
  505.         Consequently, ZAPCODE will not be installed in memory.
  506.  
  507.         Press the "I" key to install ZAPCODE and the selected PMF in
  508.         memory. To confirm memory resident installation, a window is
  509.         displayed containing printer setup, program activation, and
  510.         memory information. The default hotkey for ZAPCODE is Ctrl-Alt-Z.
  511.         That means, to activate ZAPCODE, hold down the Ctrl and Alt keys
  512.         and press "Z".
  513.  
  514.         You may install as many copies of ZAPCODE as available memory
  515.         will allow. If you have installed more than one copy and each
  516.         shares the same hotkey, press the hotkey once to activate the
  517.         copy installed last. Press it again to activate the copy
  518.         installed prior to that, and so on.
  519.  
  520.         Press the "U" key to uninstall ZAPCODE from memory. If you have
  521.         installed more than one copy, the last copy installed will be
  522.         uninstalled. Uninstalling again will cause the copy installed
  523.         prior to that one to be uninstalled. If you have loaded other
  524.         memory resident utilities after ZAPCODE, it is possible that
  525.         ZAPCODE will not be able to uninstall itself. When this happens,
  526.         the message "Cannot uninstall" is displayed.
  527.  
  528.         Press the "E" key to edit the selected PMF. The "PMF Editor"
  529.         allows you to easily create and edit printer drivers. See "Using
  530.         The PMF Editor" for instructions.
  531.  
  532.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  5
  533.  
  534.  
  535.         Press the "A" key to create a new PMF. A window will be
  536.         displayed prompting for the PMF filename to create. Once you
  537.         enter a filename, the "PMF Editor" is invoked and you can begin
  538.         building your new printer driver.
  539.  
  540.         Command Line Switches
  541.         ---------------------
  542.  
  543.         All of the above functions can be performed by use of command
  544.         line switches. The complete syntax for ZAPCODE is:
  545.  
  546.                      ZAPCODE [filename] [/I] [/U] [/E]
  547.  
  548.         "filename" is the name of the printer make file. It is not
  549.         necessary to type the ".PMF" extension.
  550.  
  551.         /I installs ZAPCODE and the specified PMF in memory.
  552.  
  553.         /U uninstalls the last installed copy of ZAPCODE.
  554.  
  555.         /E invokes the PMF editor. You must also specify the name of the
  556.         PMF you wish to edit. If the PMF does not exist, it will be
  557.         created.
  558.  
  559.         If you wish to have a PMF loaded automatically each time you
  560.         boot up, you may include ZAPCODE as an entry in your
  561.         AUTOEXEC.BAT file. If other memory resident utilities are loaded
  562.         in your AUTOEXEC.BAT and conflicts occur when loading
  563.         ZAPCODE, try different variations in the order each is loaded.
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  6
  592.  
  593.  
  594.         +--------------------------------------------------------------+
  595.         |                        Using ZAPCODE                         |
  596.         +--------------------------------------------------------------+
  597.  
  598.         When ZAPCODE is activated, a window is displayed containing the
  599.         printer options. A bar hilights the currently selected option.
  600.         The description window contains a description of the selected
  601.         option. Another window contains a list of keys that can be used
  602.         to control ZAPCODE. They are:
  603.  
  604.                 UpArrow     -   Move selection bar up one option
  605.                 DnArrow     -   Move selection bar down one option
  606.                 PgUp        -   Move selection bar up one page
  607.                 PgDn        -   Move selection bar down one page
  608.                 Home        -   Move selection bar to first option
  609.                 End         -   Move selection bar to last option
  610.                 Insert      -   Send the selected option to keyboard
  611.                 Enter       -   Send the selected option to printer
  612.                 Spacebar    -   Send reset code sequence to printer
  613.                 Slash (/)   -   Manually enter codes to send to printer
  614.                 Esc         -   Exit ZAPCODE
  615.  
  616.         Use the UpArrow, DnArrow, PgUp, PgDn, Home, and End keys to
  617.         select a printer option.
  618.  
  619.         Press the Insert key to send the control codes for the selected
  620.         option to the keyboard. Use this feature to enter printer codes
  621.         into your word processor, spreadsheet, or any other program.
  622.         ZAPCODE can be configured to enter codes in a variety of formats
  623.         including decimal and hexadecimal. This feature defaults off and
  624.         you must use the "PMF Editor" to activate it. (See "Using The
  625.         PMF Editor" for instructions.) This feature only works when
  626.         ZAPCODE is memory resident. Pressing the Insert key when ZAPCODE
  627.         is stand-alone or when this feature is off causes the speaker
  628.         to beep and has no effect.
  629.  
  630.         Press the Enter key to send the control codes for the selected
  631.         option to the printer. When done, the message "Codes Zapped"
  632.         will be displayed if the operation was successful. If your
  633.         printer is off-line or turned off, an error message will be
  634.         displayed and you will be prompted for necessary action.
  635.  
  636.         Press the Spacebar to send the reset codes to the printer. This
  637.         is a string of control codes used to restore all printer options
  638.         to their power-on defaults. Some printers provide a control code
  639.         for doing just this, while with others, each option must be
  640.         restored individually. If there are no reset codes configured,
  641.         this function has no effect.
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  7
  651.  
  652.  
  653.         Sending Printer Codes Manually
  654.         ------------------------------
  655.  
  656.         Pressing the Slash (/) key causes a window to be displayed in
  657.         which you may enter codes to send to the printer. The codes may
  658.         be entered in any of three formats:
  659.  
  660.                         Decimal       -   eg. 255
  661.                         Hexadecimal   -   eg. 0FFh
  662.                         ASCII         -   eg. "&k4s"
  663.  
  664.         Codes must be separated by a comma or a space. Codes entered in
  665.         hexadecimal format must be preceded by a numeric digit and end
  666.         with the character "h". Codes entered in ASCII format must be
  667.         enclosed in quotation marks. AS YOU ENTER CODES, THE WINDOW WILL
  668.         PAD ONCE YOU HAVE REACHED THE RIGHT MARGIN. This allows you to
  669.         enter an unlimited number of codes.
  670.  
  671.                         Example:    27,"&o2e5",0C5h
  672.  
  673.         While entering codes, use the following keys to edit and control
  674.         ZAPCODE:
  675.  
  676.                 LeftArrow    -   Move cursor left one character
  677.                 RightArrow   -   Move cursor right one character
  678.                 Ins          -   Toggle insert/overwrite entry modes
  679.                 Del          -   Delete character under cursor
  680.                 Backspace    -   Delete character left of cursor
  681.                 F1           -   Display syntax help window
  682.                 Enter        -   Send entered codes to printer
  683.                 Esc          -   Abort
  684.  
  685.         Use the LeftArrow, RightArrow, Insert, Delete, and Backspace
  686.         keys to edit what you have entered. Press F1 to display a window
  687.         containing information about the syntax that must be used while
  688.         entering codes. Press Enter to send the entered codes to the
  689.         printer. Press Esc to abort.
  690.  
  691.         The "Enter Missing Parameter(s)" (EMP) Window
  692.         ---------------------------------------------
  693.  
  694.         Some printer options require that a parameter or parameters be
  695.         entered before they can be activated (eg. Set Tabs). Selecting
  696.         one of these options causes a window to be displayed prompting
  697.         you for the missing parameter(s). This window is identical to
  698.         the window used for entering codes manually. However, there is
  699.         an additional window containing instructions explaining what is
  700.         expected. Two additional keys are available for scrolling the
  701.         instruction text:
  702.  
  703.                 PgUp   -   Display previous page of instructions
  704.                 PgDn   -   Display next page of instructions
  705.  
  706.         Once you have entered the necessary parameter(s), the control
  707.         codes for that option along with the missing parameter code(s)
  708.         will be sent to the printer.
  709.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  8
  710.  
  711.  
  712.         +--------------------------------------------------------------+
  713.         |                    Using The PMF Editor                      |
  714.         +--------------------------------------------------------------+
  715.  
  716.         Using the PMF Editor, you can create and edit PMF's and change
  717.         the following PMF control information:
  718.  
  719.                              Printer Name
  720.                              Printer Port and Setup
  721.                              Printer Reset Codes
  722.                              Activation Hotkey
  723.                              Window Colors
  724.                              Keyboard Setup
  725.  
  726.         All control information is personal and stored in that PMF.
  727.         This means that each PMF can have its own personal activation
  728.         hotkey, window colors, and everything else.
  729.  
  730.         The PMF Editor's main editing screen is identical to ZAPCODE's
  731.         main selection window. There is an additional window displayed
  732.         at the bottom containing status information and a list of keys
  733.         that can be pressed to control editing. They are:
  734.  
  735.                 E   -   Edit the selected code
  736.                 A   -   Add a new code after the selected
  737.                 D   -   Delete the selected code
  738.                 M   -   Move the selected code
  739.                 C   -   Configure other options
  740.  
  741.         The PMF filename and memory usage are displayed in the lower
  742.         left corner. This memory amount reflects the number of bytes
  743.         the PMF would use when installed in memory (using the "/I"
  744.         switch). This amount does not include the 17K bytes ZAPCODE
  745.         itself uses.
  746.  
  747.         Edit Printer Code
  748.         -----------------
  749.  
  750.         Press "E" to edit the selected printer code. A window will be
  751.         displayed containing the printer code name, description and
  752.         actual codes in decimal. Use the following keys during editing:
  753.  
  754.                 UpArrow     -  Move to previous field
  755.                 DnArrow     -  Move to next field
  756.                 LeftArrow   -  Move cursor left one character
  757.                 RightArrow  -  Move cursor right one character
  758.                 Ins         -  Toggle insert/overwrite entry modes
  759.                 Del         -  Delete character under cursor
  760.                 Backspace   -  Delete character left of cursor
  761.                 Enter       -  Finish editing and save changes
  762.                 Esc         -  Abort without saving changes
  763.                 F1          -  Display syntax help window
  764.                 Alt-A       -  Add EMP window at cursor
  765.                 Alt-E       -  Edit EMP window at cursor
  766.  
  767.  
  768.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page  9
  769.  
  770.  
  771.         Use the UpArrow and DnArrow keys to move between fields. Use the
  772.         LeftArrow, RightArrow, Insert, Delete, and Backspace keys to
  773.         edit the current field. Press Enter to finish editing and save
  774.         changes. Press Esc to abort without saving changes.
  775.  
  776.         Press F1 to display a window containing information about the
  777.         syntax that must be used while entering codes. You may press F1
  778.         only when the cursor is in the codes field.
  779.  
  780.         Press Alt-A to add an EMP window at the current cursor location.
  781.         You may press Alt-A only when the cursor is in the codes field.
  782.  
  783.         Press Alt-E to edit the EMP window at the current cursor
  784.         location. The box character symbolizes an EMP window. You may
  785.         press Alt-E only when an EMP window symbol is displayed at the
  786.         current cursor location.
  787.  
  788.         * Adding An EMP Window *
  789.  
  790.         To add an EMP window, place the cursor at the position within
  791.         the codes that the "missing parameter" codes should be inserted.
  792.         Then press Alt-A. A window will then be displayed in which you
  793.         may enter the EMP instruction text. The following keys can be
  794.         used while entering instruction text:
  795.  
  796.                 UpArrow      -  Move cursor up one line
  797.                 DnArrow      -  Move cursor down one line
  798.                 LeftArrow    -  Move cursor left one character
  799.                 RightArrow   -  Move cursor right one character
  800.                 Ins          -  Toggle insert/overwrite entry modes
  801.                 Del          -  Delete character under cursor
  802.                 Backspace    -  Delete character left of cursor
  803.                 PgUp         -  Move to previous page of instruction text
  804.                 PgDn         -  Move to next page of instruction text
  805.                 Enter        -  Finish entering EMP instruction text
  806.                 Esc          -  Abort
  807.  
  808.         Use the UpArrow, DnArrow, LeftArrow, RightArrow, Insert, Delete,
  809.         and Backspace keys to edit the instruction text. If you need
  810.         additional pages to enter instructions, press the PgDn key. The
  811.         PgUp key allows you to move back to previous pages. Press Enter
  812.         to finish and save the new EMP.  Press Esc to abort without
  813.         saving.
  814.  
  815.         You may create as many EMP windows for a printer option as you
  816.         like. When the printer option is then later used, each EMP
  817.         window will display and prompt in the order it is found in
  818.         the control codes. For example, If you defined the following:
  819.  
  820.                 "Hello ",EMP#1," My name is ",EMP#2,".",13,10
  821.  
  822.         (EMP#1 and EMP#2 would be displayed as box characters.)
  823.         When this option is printed, the following happens:
  824.  
  825.  
  826.  
  827.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 10
  828.  
  829.  
  830.                 1.  "Hello " is sent to the printer.
  831.                 2.  EMP window #1 is displayed and you are prompted
  832.                     for "missing parameter" codes. Let's assume
  833.                     you respond by typing "everybody." (quotation marks
  834.                     included).
  835.                 3.  "everybody." is sent to the printer.
  836.                 4.  " My name is " is sent to the printer.
  837.                 5.  EMP window #2 is displayed and you are prompted
  838.                     again. Let's assume you respond by typing "John Doe".
  839.                 6.  "John Doe" is sent to the printer.
  840.                 7.  "." is sent to the printer.
  841.                 8.  Character 13 (carriage return) and 10 (linefeed) are
  842.                     sent to the printer.
  843.  
  844.         Your printer would have printed the following:
  845.  
  846.                 Hello everybody. My name is John Doe.
  847.  
  848.         EMP windows allow you to do all sorts of great things. Use an
  849.         EMP window to prompt for the tab stops in a "Set Tabs" control
  850.         code sequence. Use one to prompt for the recipient's address
  851.         for printing envelopes. Examine the included PMF's for examples.
  852.  
  853.         * Editing An EMP Window *
  854.  
  855.         To edit an EMP window, place the cursor on the EMP window symbol
  856.         and press Alt-E. A window will be displayed containing the
  857.         instruction text. Follow the same rules for editing an EMP as
  858.         you did for adding.
  859.  
  860.         * Deleting An EMP Window *
  861.  
  862.         To delete an EMP window, place the cursor on the desired window
  863.         symbol and press the delete key. You will be prompted for
  864.         confirmation before the window is actually deleted. Attempting
  865.         to type over the EMP window symbol will also delete it. ZAPCODE
  866.         will ask you to confirm before it does so.
  867.  
  868.         Add Printer Code
  869.         ----------------
  870.  
  871.         To add a printer code, press "A". A window will be displayed in
  872.         which you may enter the name, description, and printer codes.
  873.         Follow the same rules for adding a printer code as you did for
  874.         editing. When finished, the code will be added immediately after
  875.         the one that was selected when the "A" key was pressed.
  876.  
  877.         Delete Printer Code
  878.         -------------------
  879.  
  880.         To delete the selected printer code, press "D". You will be
  881.         prompted for confirmation before the code is actually deleted.
  882.  
  883.  
  884.  
  885.  
  886.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 11
  887.  
  888.  
  889.         Move Printer Code
  890.         -----------------
  891.  
  892.         The move command allows you to organize and group the printer
  893.         codes. To move the selected code, press "M". Then select the
  894.         destination for the move using the UpArrow, DnArrow, PgUp,
  895.         PgDn, Home, and End keys. The printer code will be moved to the
  896.         entry immediately before the selected destination. Press Enter
  897.         to perform the move. Press Esc to abort.
  898.  
  899.         Configure Other Options
  900.         -----------------------
  901.  
  902.         Pressing "C" allows you to configure the following PMF control
  903.         information:
  904.                                 Printer Name
  905.                                 Port Setup
  906.                                 Reset Codes
  907.                                 Activation Hotkey
  908.                                 Window Colors
  909.                                 Keyboard Setup
  910.  
  911.         Use the UpArrow and DnArrow keys to select. Press Enter to
  912.         configure the selected. Press Esc to abort.
  913.  
  914.         * Printer Name *
  915.  
  916.         This option allows you to enter/edit the printer name. A window
  917.         is displayed containing the printer name for the PMF. Use the
  918.         following keys:
  919.  
  920.                 LeftArrow    -  Move cursor left one character
  921.                 RightArrow   -  Move cursor right one character
  922.                 Ins          -  Toggle insert/overwrite entry modes
  923.                 Del          -  Delete character under cursor
  924.                 Backspace    -  Delete character left of cursor
  925.                 Enter        -  Save changes made
  926.                 Esc          -  Abort without saving changes
  927.  
  928.         Use the LeftArrow, RightArrow, Insert, Delete, and Backspace
  929.         keys to edit the printer name. Press Enter to save new printer
  930.         name. Press Esc to abort without saving.
  931.  
  932.         * Port Setup *
  933.  
  934.         This option allows you to select and configure the printer port.
  935.         A window is displayed containing the current port assignment.
  936.         Your choices are:
  937.  
  938.                         LPT1: Parallel 1
  939.                         LPT2: Parallel 2
  940.                         LPT3: Parallel 3
  941.                         COM1: Serial 1
  942.                         COM2: Serial 2
  943.                         COM3: Serial 3
  944.                         COM4: Serial 4
  945.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 12
  946.  
  947.  
  948.         Selecting any of the serial ports (COM1 to COM4) will present
  949.         further configuration windows allowing you to select baud rate,
  950.         data parity, number of data bits, and number of stop bits.
  951.  
  952.         Baud rate can be any of the following: 300, 1200, 2400, 4800,
  953.         9600, 19200, or 38400 bps. Data parity can be either Odd, Even,
  954.         None, Space, or Mark. The number of data bits can be either 7 or
  955.         8 and the number of stop bits can be either 1 or 2.
  956.  
  957.         * Printer Reset Codes *
  958.  
  959.         This option allows you to configure the printer reset codes.
  960.         The printer reset codes can be sent by pressing the spacebar
  961.         from ZAPCODE's main window.
  962.  
  963.         Selecting this options causes a window to be displayed
  964.         containing the current reset codes for the PMF. Use the
  965.         following keys:
  966.  
  967.                 LeftArrow    -  Move cursor left one character
  968.                 RightArrow   -  Move cursor right one character
  969.                 Ins          -  Toggle insert/overwrite entry modes
  970.                 Del          -  Delete character under cursor
  971.                 Backspace    -  Delete character left of cursor
  972.                 F1           -  Display syntax help window
  973.                 Enter        -  Finish and save changes
  974.                 Esc          -  Abort without saving changes
  975.  
  976.         Use the LeftArrow, RightArrow, Insert, Delete, and Backspace
  977.         keys to edit the reset codes. Press F1 to display a window
  978.         containing information about the syntax that must be used. Press
  979.         Enter to finish and save changes. Press Esc to abort without
  980.         saving changes.
  981.  
  982.         * Activation Hotkey *
  983.  
  984.         This option allows you to change the key combination used to
  985.         activate ZAPCODE for this PMF.
  986.  
  987.         A window will be displayed prompting for the new activation
  988.         hotkey. You may use any combination of the shift keys (Ctrl,
  989.         Alt, LeftShift, and RightShift) while entering a new hotkey. For
  990.         example: To set the new hotkey to Ctrl-Alt-P, hold down the Ctrl
  991.         and Alt keys and press "P". If you entered it incorrectly the
  992.         first time, enter it again. Once you have entered it correctly,
  993.         you must enter it once again to confirm.
  994.  
  995.         * Window Colors *
  996.  
  997.         This option allows you to change the ZAPCODE window colors. The
  998.         colors for the following windows can be changed:
  999.  
  1000.  
  1001.  
  1002.  
  1003.  
  1004.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 13
  1005.  
  1006.                         Installation Window
  1007.                         Main Window
  1008.                         Enter Codes to Send Window
  1009.                         Syntax Help Window
  1010.                         EMP Window
  1011.                         Printer Reset Window
  1012.                         Codes Zapped Window
  1013.                         Printer Error Window
  1014.  
  1015.         A window will be displayed in the bottom right corner prompting
  1016.         you for the desired window whose colors you wish to change. Use
  1017.         the UpArrow and DnArrow keys to select desired window. As you
  1018.         select each window, it is displayed in the upper left corner.
  1019.         Press Enter to confirm selection. Press Esc to end.
  1020.  
  1021.         After selecting a window, you will be prompted to select a
  1022.         window part. Use the UpArrow and DnArrow keys to select desired
  1023.         window part. As you select each window part, its color will be
  1024.         displayed. Press Enter to confirm selection. Press Esc to return
  1025.         to window selection.
  1026.  
  1027.         After selecting a window part, you will be prompted to select a
  1028.         new background color. Use the UpArrow and DnArrow keys to select
  1029.         desired color. As you select each color, the window will be
  1030.         updated to reflect it. Press Enter to confirm selection. Press
  1031.         Esc to return to part selection.
  1032.  
  1033.         After selecting a background color, you will be prompted to
  1034.         select a new foreground color. Use the UpArrow and DnArrow keys
  1035.         to select desired color. As you select each color, the window
  1036.         will be updated to reflect it. Press Enter to confirm selection.
  1037.         Press Esc to return to background color selection.
  1038.  
  1039.         * Keyboard Setup *
  1040.  
  1041.         The "Keyboard Setup" option allows you to tailor the way ZAPCODE
  1042.         sends printer codes to the keyboard. The following options allow
  1043.         you to customize ZAPCODE to work with virtually any program:
  1044.  
  1045.                                 Code Format
  1046.                                 String Prefix
  1047.                                 String Suffix
  1048.                                 Code Prefix
  1049.                                 Code Suffix
  1050.                                 Code Delimiter
  1051.  
  1052.         "Code Format" is the format each code is expressed in. The
  1053.         following formats are available:
  1054.  
  1055.                 Decimal ............................... 5,15,255
  1056.                 Decimal 3 character ................... 005,015,255
  1057.                 Hexadecimal with digit start .......... 5,0F,0FF
  1058.                 Hexadecimal without digit start ....... 5,F,FF
  1059.                 Hexadecimal 2 character ............... 05,0F,FF
  1060.                 Hexadecimal 3 character ............... 005,00F,0FF
  1061.                 ASCII
  1062.  
  1063.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 14
  1064.  
  1065.  
  1066.         The examples to the right demonstrate how three codes (5, 15,
  1067.         and 255) are expressed when that format is used. "Hex with digit
  1068.         start" means that a numerical digit (0-9) must always lead the
  1069.         number. This is the format ZAPCODE prefers to accept hexadecimal
  1070.         numbers in. The last format, "ASCII", causes each code to be
  1071.         entered as its ASCII character equivalent. Thus, the following
  1072.         codes:
  1073.  
  1074.                         72  101  108  108  111
  1075.  
  1076.         would yield their ASCII equivalents:
  1077.  
  1078.                         H   e    l    l    o
  1079.  
  1080.         The NUL code (character 0) can be used to define special keys
  1081.         and key combinations. For example, the following codes:
  1082.  
  1083.                         0   59   65   66   67   0   19
  1084.  
  1085.         translate into:
  1086.  
  1087.                         F1       A    B    C    Alt-R
  1088.  
  1089.         Codes 0 and 59 define the F1 function key. Codes 65, 66, and 67
  1090.         define keys "A", "B", and "C" respectively. Codes 0 and 19
  1091.         define the Alt-R key combination. See Appendix D for a complete
  1092.         list of special keys and the codes needed to define them.
  1093.  
  1094.         There aren't many programs that you would use the "ASCII" format
  1095.         for entering printer codes into. However, it does add to
  1096.         ZAPCODE's functionality in that it allows you to create keyboard
  1097.         macros. You could, for instance, create a PMF dedicated to this
  1098.         cause entirely. To use one of the macros, you would simply
  1099.         pop-up ZAPCODE, select it, and voila!
  1100.  
  1101.         "String Prefix", "String Suffix", "Code Prefix", "Code Suffix",
  1102.         and "Code Delimiter" are used to specify what comes before,
  1103.         after, and in the middle of each individual code and the entire
  1104.         string of codes. Each of these is sent to the keyboard as an
  1105.         "ASCII" format string. This means you may use special keys and
  1106.         key combinations in them. "String Prefix" specifies what comes
  1107.         before the entire string of codes. "String Suffix" specifies
  1108.         what comes after the entire string of codes. "Code Prefix"
  1109.         specifies what comes before each individual code. "Code Suffix"
  1110.         specifies what comes after each individual code. "Code
  1111.         Delimiter" specifies what comes between each individual code. If
  1112.         three codes were sent, they would look like this:
  1113.  
  1114.         SP, CP, Code1, CS, CD, CP, Code2, CS, CD, CP, Code3, CS, SS
  1115.  
  1116.                 SP = String Prefix
  1117.                 SS = String Suffix
  1118.                 CP = Code Prefix
  1119.                 CS = Code Suffix
  1120.                 CD = Code Delimiter
  1121.  
  1122.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 15
  1123.  
  1124.  
  1125.         Consider the following example:
  1126.  
  1127.                 Code Format    =  Decimal 3 character
  1128.                 String Prefix  =  "/PPOS"
  1129.                 String Suffix  =  13,"QQ"
  1130.                 Code Prefix    =  "\"
  1131.                 Code Suffix    =  (nothing)
  1132.                 Code Delimiter =  (nothing)
  1133.  
  1134.         The above configuration can be used to enter codes into Lotus
  1135.         1-2-3. Lotus 1-2-3 requires that each code be expressed as a
  1136.         three digit decimal number and that each is prefixed by the
  1137.         backslash character "\". The "String Prefix" moves 1-2-3 to
  1138.         the "Setup string:" option. The "String Suffix" moves 1-2-3 out
  1139.         of the "Setup string:" option and back to the spreadsheet. With
  1140.         this configuration, all that is needed to do is:
  1141.  
  1142.         1. Pop-up ZAPCODE.
  1143.         2. Select desired printer option.
  1144.         3. Press the Insert key.
  1145.         4. Goto step 2 if more.
  1146.         5. Press Esc key.
  1147.  
  1148.         You may also use the "Send to keyboard" feature to insert
  1149.         printer codes into ZAPCODE itself. For instance, you might want
  1150.         to create two PMF's for your printer. One would contain a
  1151.         definition for each individual printer option. The other might
  1152.         contain entire setup strings which might combine individual
  1153.         printer options. To create this second PMF, you could use the
  1154.         first to insert the codes into the PMF Editor. The "Keyboard
  1155.         Setup" for the first would look like this:
  1156.  
  1157.                 Code Format    =  Decimal
  1158.                 String Prefix  =  "A",0,80,0,80,0,80,0,80,0,80,0,80
  1159.                 String Suffix  =  0,72,0,72,0,72,0,72,0,72,0,72
  1160.                 Code Prefix    =  (nothing)
  1161.                 Code Suffix    =  (nothing)
  1162.                 Code Delimiter =  ","
  1163.  
  1164.         The "String Prefix" contains:
  1165.  
  1166.         "A" key to tell PMF Editor to add a new option.
  1167.          Six DnArrow keys to move the cursor to the "Codes" field.
  1168.  
  1169.         The "String Suffix" contains:
  1170.  
  1171.         Six UpArrow keys to move the cursor back from the "Codes"
  1172.         field up to the "Name" field.
  1173.  
  1174.         With this PMF resident in memory and while your using
  1175.         the PMF Editor to create the second:
  1176.  
  1177.         1. Pop-up ZAPCODE (which contains the PMF for the first).
  1178.         2. Select desired printer options you wish to combine.
  1179.         3. Press Esc key.
  1180.  
  1181.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 16
  1182.  
  1183.  
  1184.         You must pop-up ZAPCODE from the main PMF Editor window since
  1185.         the "String Prefix" will take care of adding a new option and
  1186.         moving to the "Codes" field. Once you've exited the resident
  1187.         copy, the codes will be entered and the cursor will be moved
  1188.         to the "Name" field.
  1189.  
  1190.  
  1191.  
  1192.  
  1193.  
  1194.  
  1195.  
  1196.  
  1197.  
  1198.  
  1199.  
  1200.  
  1201.  
  1202.  
  1203.  
  1204.  
  1205.  
  1206.  
  1207.  
  1208.  
  1209.  
  1210.  
  1211.  
  1212.  
  1213.  
  1214.  
  1215.  
  1216.  
  1217.  
  1218.  
  1219.  
  1220.  
  1221.  
  1222.  
  1223.  
  1224.  
  1225.  
  1226.  
  1227.  
  1228.  
  1229.  
  1230.  
  1231.  
  1232.  
  1233.  
  1234.  
  1235.  
  1236.  
  1237.  
  1238.  
  1239.  
  1240.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 17
  1241.  
  1242.  
  1243.         +--------------------------------------------------------------+
  1244.         |                   The Printer Make File (PMF)                |
  1245.         +--------------------------------------------------------------+
  1246.  
  1247.         The PMF is simply an ASCII text file which you may edit using a
  1248.         line editor (such as EDLIN) or a word processor. The PMF Editor
  1249.         allows you to easily customize and create your own PMF's without
  1250.         regard to PMF syntax or structure. You may, however, do the same
  1251.         by simply text editing the PMF. This section and appendixes A,
  1252.         B, and C describe the PMF structure, syntax, and conventions in
  1253.         detail.
  1254.  
  1255.         The PMF consists of commands which tell ZAPCODE the following:
  1256.  
  1257.                         Printer Name
  1258.                         Printer Port and Setup
  1259.                         Printer Reset Codes
  1260.                         Activation Hotkey
  1261.                         Window Colors
  1262.                         Keyboard Setup
  1263.                         Printer Option Names
  1264.                         Printer Option Descriptions
  1265.                         Printer Option Control Codes
  1266.  
  1267.         Each command consists of a keyword and a number of arguments.
  1268.         The keyword identifies what is being defined, while the
  1269.         arguments define it. Appendix A contains a complete list of all
  1270.         PMF commands and their usage.
  1271.  
  1272.         PMF Syntax and Guidelines
  1273.         -------------------------
  1274.  
  1275.         1. Keywords must be in all capital letters.
  1276.         2. Keywords may start at any location within the line.
  1277.         3. Comments may be used by placing a semicolon before the
  1278.            comment text.
  1279.         4. Blank lines are permitted.
  1280.         5. The equals sign (=) is not necessary but may be used to
  1281.            enhance the clarity of the PMF.
  1282.         6. Arguments may be entered in any of three formats:
  1283.  
  1284.                         Decimal       eg. 255
  1285.                         Hexadecimal   eg. 0FFh
  1286.                         ASCII         eg. "XYZ"
  1287.  
  1288.         Arguments must be seperated by a comma or a space. Arguments
  1289.         entered in hexadecimal must be preceded by a numeric digit and
  1290.         end with the character "h".  Arguments entered in ASCII must be
  1291.         enclosed in quotation marks. To use the quotation mark in an
  1292.         ASCII argument, you must define it twice.
  1293.  
  1294.         The following page contains an example PMF:
  1295.  
  1296.  
  1297.  
  1298.  
  1299.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 18
  1300.  
  1301.  
  1302.  
  1303.  
  1304.  
  1305.  
  1306.         ;---------------------------------------------------------------
  1307.         ; PMF for Printer XYZ
  1308.         ;---------------------------------------------------------------
  1309.  
  1310.         PRINTER     =   "XYZ Printer"                       ;Printer name
  1311.         PORT        =   "COM2:9600,N,8,1"                   ;Printer port/setup
  1312.         RESET       =   27,"?",1                            ;Reset codes
  1313.         ACTIVATE    =   8,25,"Press Alt-P to activate."     ;Alternate hotkey
  1314.         KCFORMAT    =   2                                   ;Decimal 3 char
  1315.         KSPREFIX    =   "/PPOS"                             ;String prefix
  1316.         KSSUFFIX    =   13,"QQ"                             ;String suffix
  1317.         KCPREFIX    =   "\"                                 ;Code prefix
  1318.         COLOR       =   2,0,0,0,0,0,0,30                    ;Change selection
  1319.                                                             ;bar color to
  1320.                                                             ;yellow on blue.
  1321.  
  1322.         NAME        =   "Compressed Print"                  ;Option name
  1323.           DESC      =   "This command selects 16.7"         ;Option description
  1324.                         "characters per inch (cpi)."
  1325.           CODES     =   0Fh                                 ;Control codes
  1326.  
  1327.         NAME        =   "Set Horizontal Tab Stop(s)"
  1328.           DESC      =   "This command allows you to set"
  1329.                         "horizontal tab stops."
  1330.           CODES     =   27,44h
  1331.                         0                                   ;Start of EMP
  1332.                         "Enter locations you wish to set a"
  1333.                         "horizontal tab stop at in ascending"
  1334.                         "order. You may set up to 28."
  1335.                         " "
  1336.                         "Example: Entering 10,20,40 would"
  1337.                         "set three tab stops, at locations"
  1338.                         "10, 20 and 40."
  1339.                         0                                   ;End of EMP
  1340.                         0,0                                 ;NUL code
  1341.  
  1342.         NAME        =   "Select NLQ Print"
  1343.           DESC      =   "Activate Near Letter Quality (NLQ)"
  1344.                         "printing. Characters printed in NLQ"
  1345.                         "are crisper and more like the"
  1346.                         "characters produced by a type-"
  1347.                         "writer."
  1348.           CODES     =   27,120,1
  1349.  
  1350.  
  1351.  
  1352.  
  1353.  
  1354.  
  1355.  
  1356.  
  1357.  
  1358.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 19
  1359.  
  1360.  
  1361.         +--------------------------------------------------------------+
  1362.         |                   Appendix A - PMF Commands                  |
  1363.         +--------------------------------------------------------------+
  1364.  
  1365.         The following is a complete list of all PMF commands. Provided
  1366.         with each is its description, usage, and an example:
  1367.  
  1368.         Command ....... PRINTER
  1369.         Description ... Names the printer for which the PMF is created.
  1370.                         Up to 29 characters can be used.
  1371.         Usage ......... PRINTER [printer name]
  1372.         Example ....... PRINTER "XYZ Printer"
  1373.  
  1374.  
  1375.         Command ....... PORT
  1376.         Description ... Defines the port for which the printer is
  1377.                         connected.
  1378.         Usage ......... PORT [port:baud,parity,data,stop]
  1379.                         port   = LPT1, LPT2, LPT3, COM1, COM2, COM3,
  1380.                                  COM4
  1381.                         baud   = 300, 1200, 2400, 4800, 9600, 19200,
  1382.                                  38400
  1383.                         parity = O)dd, E)ven, N)one, S)pace, M)ark
  1384.                         data   = 7, 8
  1385.                         stop   = 1, 2
  1386.                         Baud, parity, data, and stop only used when
  1387.                         defining serial ports COM1 to COM4.
  1388.         Example ....... PORT "COM2:9600,N,8,1"
  1389.  
  1390.  
  1391.         Command ....... RESET
  1392.         Description ... Defines the reset codes to be sent to the
  1393.                         printer when a reset is requested. Up to 255
  1394.                         codes may be defined.
  1395.         Usage ......... RESET [code1, code2,... code255]
  1396.         Example ....... RESET 27,"?",1
  1397.  
  1398.  
  1399.         Command ....... ACTIVATE
  1400.         Description ... Defines an alternate hotkey to be used to
  1401.                         activate ZAPCODE when installed in memory. If
  1402.                         none is defined, the hotkey defaults to Ctrl-
  1403.                         Alt-Z.
  1404.         Usage ......... ACTIVATE [shiftmask, hotkey, install message]
  1405.                         install message = message to display in
  1406.                         installation window when ZAPCODE is installed.
  1407.                         Up to 35 characters can be used to define a
  1408.                         message. See Appendix B for shiftmask and
  1409.                         hotkey values.
  1410.         Example ....... ACTIVATE 8,25,"Press Alt-P to activate."
  1411.  
  1412.  
  1413.  
  1414.  
  1415.  
  1416.  
  1417.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 20
  1418.  
  1419.  
  1420.         Command ....... COLOR
  1421.         Description ... Defines alternate color(s) for one of ZAPCODE's
  1422.                         windows. You may use as many color commands
  1423.                         as there are windows.
  1424.         Usage ......... COLOR [window, color1, color2,... color7]
  1425.                         Entering a 0 value for a color argument causes
  1426.                         the default to be used. See Appendix C for
  1427.                         window numbers and color values.
  1428.         Example ....... COLOR 2,0,0,0,0,0,0,30
  1429.  
  1430.  
  1431.         Command ....... KCFORMAT
  1432.         Description ... Defines "Code Format".
  1433.         Usage ......... KCFORMAT [format]
  1434.                         format = 0:Off
  1435.                                  1:Decimal
  1436.                                  2:Decimal 3 character
  1437.                                  3:Hex with digit start
  1438.                                  4:Hex w/o digit start
  1439.                                  5:Hex 2 character
  1440.                                  6:Hex 3 character
  1441.                                  7:ASCII
  1442.         Example ....... KCFORMAT 2
  1443.  
  1444.  
  1445.         Command ....... KSPREFIX
  1446.         Description ... Defines "String Prefix". Up to 30 characters
  1447.                         can be used. Special keys and key combinations
  1448.                         may be defined by preceding each with a NUL
  1449.                         code (0). See Appendix D for list.
  1450.         Usage ......... KSPREFIX [code1, code2,... code30]
  1451.         Example ....... KSPREFIX "ABC",13,0,80,27,"DEF"
  1452.  
  1453.  
  1454.         Command ....... KSSUFFIX
  1455.         Description ... Defines "String Suffix". Up to 30 characters
  1456.                         can be used. Special keys and key combinations
  1457.                         may be defined by preceding each with a NUL
  1458.                         code (0). See Appendix D for list.
  1459.         Usage ......... KSSUFFIX [code1, code2,... code30]
  1460.         Example ....... KSSUFFIX "ABC",13,0,80,27,"DEF"
  1461.  
  1462.  
  1463.         Command ....... KCPREFIX
  1464.         Description ... Defines "Code Prefix". Up to 30 characters
  1465.                         can be used. Special keys and key combinations
  1466.                         may be defined by preceding each with a NUL
  1467.                         code (0). See Appendix D for list.
  1468.         Usage ......... KCPREFIX [code1, code2,... code30]
  1469.         Example ....... KCPREFIX "ABC",13,0,80,27,"DEF"
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 21
  1477.  
  1478.  
  1479.         Command ....... KCSUFFIX
  1480.         Description ... Defines "Code Suffix". Up to 30 characters
  1481.                         can be used. Special keys and key combinations
  1482.                         may be defined by preceding each with a NUL
  1483.                         code (0). See Appendix D for list.
  1484.         Usage ......... KCSUFFIX [code1, code2,... code30]
  1485.         Example ....... KCSUFFIX "ABC",13,0,80,27,"DEF"
  1486.  
  1487.  
  1488.         Command ....... KCDELIM
  1489.         Description ... Defines "Code Delimiter". Up to 30 characters
  1490.                         can be used. Special keys and key combinations
  1491.                         may be defined by preceding each with a NUL
  1492.                         code (0). See Appendix D for list.
  1493.         Usage ......... KCDELIM [code1, code2,... code30]
  1494.         Example ....... KCDELIM "ABC",13,0,80,27,"DEF"
  1495.  
  1496.  
  1497.         Command ....... NAME
  1498.         Description ... Defines the name of a printer option. All
  1499.                         printer option names are placed in the
  1500.                         selection window in the order they appear in
  1501.                         the PMF. Up to 35 characters can be used to
  1502.                         name printer options.
  1503.         Usage ......... NAME [option name]
  1504.         Example ....... NAME "Set Horizontal Tab Stop(s)"
  1505.  
  1506.  
  1507.         Command ....... DESC
  1508.         Description ... Defines the printer option description. The
  1509.                         description is displayed in the description
  1510.                         window when its option is selected. Up to 5
  1511.                         lines of 35 characters each can be used to
  1512.                         define a description.
  1513.         Usage ......... DESC [description line 1]
  1514.                              [description line 2]
  1515.                              ...
  1516.                              [description line 5]
  1517.         Example ....... DESC "This command allows you to set"
  1518.                              "horizontal tab stops."
  1519.  
  1520.  
  1521.  
  1522.  
  1523.  
  1524.  
  1525.  
  1526.  
  1527.  
  1528.  
  1529.  
  1530.  
  1531.  
  1532.  
  1533.  
  1534.  
  1535.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 22
  1536.  
  1537.  
  1538.         Command ....... CODES
  1539.         Description ... Defines the codes to be sent to the printer
  1540.                         when its option is selected. There is no limit
  1541.                         to the number of codes that can be defined. For
  1542.                         those options which require parameter(s) to be
  1543.                         included within the codes, you may define an
  1544.                         EMP window. To do so, mark the start and end of
  1545.                         the instruction text with a NUL code (0). You
  1546.                         may define as many lines of instruction text as
  1547.                         you wish. Up to 35 characters can be used per
  1548.                         line. When the EMP window is displayed, your
  1549.                         instructions will be paged in sets of 10 lines.
  1550.                         You may define as many EMP windows as you wish.
  1551.                         To define a NUL code to be sent to the printer,
  1552.                         you must define it twice.
  1553.         Usage ......... CODES [code1,code2]
  1554.                               0
  1555.                               [instruction text]
  1556.                               0
  1557.                               [code3,code4,...]
  1558.         Example ....... CODES 27,44h
  1559.                               0
  1560.                               "Enter locations you wish to set a"
  1561.                               "horizontal tab stop at in ascending"
  1562.                               "order. You may set up to 28."
  1563.                               0
  1564.                               0,0
  1565.  
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.  
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.  
  1588.  
  1589.  
  1590.  
  1591.  
  1592.  
  1593.  
  1594.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 23
  1595.  
  1596.  
  1597.         +--------------------------------------------------------------+
  1598.         |           Appendix B - Shift Mask & Hotkey Tables            |
  1599.         +--------------------------------------------------------------+
  1600.  
  1601.         This appendix contains the Shift Mask and Hotkey tables used for
  1602.         defining an alternate activation hotkey. (See the ACTIVATE
  1603.         command in Appendix A for a discussion.)
  1604.  
  1605.         To activate ZAPCODE, a combination of shift keys along with a
  1606.         hotkey must be depressed. The shift keys are the Ctrl, Alt,
  1607.         LeftShift, and RightShift keys, while the hotkey can be any
  1608.         other. To setup your own, you'll need to substitute a value from
  1609.         the Shift Mask Table for the argument "shiftmask" and substitute
  1610.         a value from the Hotkey Table for the argument "hotkey". The
  1611.         Shift Mask and Hotkey tables are on the next page.
  1612.  
  1613.         Example: To change the activation key sequence to Alt-P, you
  1614.         would substitute 8 for "shiftmask" and 25 for "hotkey".
  1615.  
  1616.  
  1617.  
  1618.  
  1619.  
  1620.  
  1621.  
  1622.  
  1623.  
  1624.  
  1625.  
  1626.  
  1627.  
  1628.  
  1629.  
  1630.  
  1631.  
  1632.  
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.  
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 24
  1654.  
  1655.  
  1656.         SHIFT MASK TABLE
  1657.         ===============================================================
  1658.         Alt        |                          *  *  *  *  *  *  *  *
  1659.         Ctrl       |              *  *  *  *              *  *  *  *
  1660.         L-Shift    |        *  *        *  *        *  *        *  *
  1661.         R-Shift    |     *     *     *     *     *     *     *     *
  1662.         ---------------------------------------------------------------
  1663.         Dec Value  |  0  1  2  3  4  5  6  7  8  9  1  1  1  1  1  1
  1664.                    |                                0  1  2  3  4  5
  1665.         ===============================================================
  1666.  
  1667.  
  1668.         HOTKEY TABLE
  1669.         ===============================================================
  1670.         Key         Dec    |  Key           Dec    |  Key           Dec
  1671.         ---------------------------------------------------------------
  1672.         Esc         1      |  A             30     |  F1            59
  1673.         !1          2      |  S             31     |  F2            60
  1674.         @2          3      |  D             32     |  F3            61
  1675.         #3          4      |  F             33     |  F4            62
  1676.         $4          5      |  G             34     |  F5            63
  1677.         %5          6      |  H             35     |  F6            64
  1678.         ^6          7      |  J             36     |  F7            65
  1679.         &7          8      |  K             37     |  F8            66
  1680.         *8          9      |  L             38     |  F9            67
  1681.         (9          10     |  :;            39     |  F10           68
  1682.         )0          11     |  "'            40     |  NumLock       69
  1683.         _-          12     |  ~`            41     |  ScrollLock    70
  1684.         +=          13     |  L-Shift       42     |  7Home         71
  1685.         Backspace   14     |  |\            43     |  8UpArrow      72
  1686.         Tab         15     |  Z             44     |  9PgUp         73
  1687.         Q           16     |  X             45     |  -             74
  1688.         W           17     |  C             46     |  4LeftArrow    75
  1689.         E           18     |  V             47     |  5             76
  1690.         R           19     |  B             48     |  6RightArrow   77
  1691.         T           20     |  N             49     |  +             78
  1692.         Y           21     |  M             50     |  1End          79
  1693.         U           22     |  <,            51     |  2DownArrow    80
  1694.         I           23     |  >.            52     |  3PgDn         81
  1695.         O           24     |  ?/            53     |  0Ins          82
  1696.         P           25     |  R-Shift       54     |  .Del          83
  1697.         {[          26     |  PrtSc*        55     |  SysReq        84
  1698.         }]          27     |  Alt           56     |  F11           87
  1699.         Enter       28     |  Spacebar      57     |  F12           88
  1700.         Ctrl        29     |  CapsLock      58     |
  1701.         ===============================================================
  1702.  
  1703.  
  1704.  
  1705.  
  1706.  
  1707.  
  1708.  
  1709.  
  1710.  
  1711.  
  1712.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 25
  1713.  
  1714.  
  1715.         +--------------------------------------------------------------+
  1716.         |             Appendix C - Calculating Window Colors           |
  1717.         +--------------------------------------------------------------+
  1718.  
  1719.         ZAPCODE consists of eight windows in which any of seven colors
  1720.         can be changed. This appendix outlines the window numbers and
  1721.         their color assignments. (See Appendix A for a discussion of the
  1722.         COLOR command.)
  1723.  
  1724.         To change a window color, you must substitute the desired window
  1725.         number for the argument "window", and a color value for one of
  1726.         the arguments "color1", "color2", etc. depending on which window
  1727.         part you want to change. The Window Color Assignment Table (on
  1728.         the next page) lists each window number and its part assignments.
  1729.  
  1730.         To calculate the actual color value that must be substituted,
  1731.         you must use the following formula:
  1732.  
  1733.                 colorvalue = (background x 16) + foreground
  1734.  
  1735.         The table below contains the background and foreground color
  1736.         numbers which must be substituted in the equation above.
  1737.  
  1738.                 COLOR TABLE
  1739.                 =========================================
  1740.                 0   Black       8    Gray
  1741.                 1   Blue        9    Light Blue
  1742.                 2   Green       10   Light Green
  1743.                 3   Cyan        11   Light Cyan
  1744.                 4   Red         12   Light Red
  1745.                 5   Magenta     13   Light Magenta
  1746.                 6   Brown       14   Yellow
  1747.                 7   White       15   High-intensity White
  1748.                 =========================================
  1749.  
  1750.         For example, to change the selection bar color to yellow on
  1751.         blue, you would use the following equation:
  1752.  
  1753.                 colorvalue = (1 x 16) + 14
  1754.  
  1755.         This would yield 30 for the "colorvalue" argument. Thus your
  1756.         COLOR statement would be:
  1757.  
  1758.                 COLOR 2,0,0,0,0,0,0,30
  1759.  
  1760.  
  1761.  
  1762.  
  1763.  
  1764.  
  1765.  
  1766.  
  1767.  
  1768.  
  1769.  
  1770.  
  1771.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 26
  1772.  
  1773.  
  1774.         WINDOW COLOR ASSIGNMENT TABLE
  1775.         ================================================================
  1776.                                         |
  1777.         (1) Installation Window         |  (2) Main Window
  1778.                                         |
  1779.         1.  Border                      |  1.  Border
  1780.         2.  Title                       |  2.  Titles
  1781.         3.  Printer description         |  3.  Code names
  1782.         4.  Activate help               |  4.  Code description
  1783.         5.  Memory amounts              |  5.  Help text
  1784.         6.  Memory amounts' labels      |  6.  Help text highlight
  1785.         7.  N/A                         |  7.  Selection bar
  1786.                                         |
  1787.         --------------------------------|-------------------------------
  1788.                                         |
  1789.         (3) Enter Codes to Send Window  |  (4) Syntax Help Window
  1790.                                         |
  1791.         1.  Border                      |  1.  Border
  1792.         2.  Title                       |  2.  Title
  1793.         3.  Input area                  |  3.  Help text
  1794.         4.  Help text                   |  4.  Help text highlight
  1795.         5.  Help text highlight           |  5.  N/A
  1796.         6.  N/A                         |  6.  N/A
  1797.         7.  N/A                         |  7.  N/A
  1798.                                         |
  1799.         --------------------------------|-------------------------------
  1800.                                         |
  1801.         (5) EMP Window                  |  (6) Printer Reset Window
  1802.                                         |
  1803.         1.  Border                      |  1.  Border
  1804.         2.  Titles                      |  2.  Text
  1805.         3.  Input area                  |  3.  N/A
  1806.         4.  Instruction text            |  4.  N/A
  1807.         5.  More indicator              |  5.  N/A
  1808.         6.  Help text                   |  6.  N/A
  1809.         7.  Help text highlight           |  7.  N/A
  1810.                                         |
  1811.         --------------------------------|-------------------------------
  1812.                                         |
  1813.         (7) Codes Zapped Window         |  (8) Printer Error Window
  1814.                                         |
  1815.         1.  Border                      |  1.  Border
  1816.         2.  Text                        |  2.  Printer port name
  1817.         3.  N/A                         |  3.  Error message
  1818.         4.  N/A                         |  4.  Help text
  1819.         5.  N/A                         |  5.  Help text highlight
  1820.         6.  N/A                         |  6.  N/A
  1821.         7.  N/A                         |  7.  N/A
  1822.                                         |
  1823.         ================================================================
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 27
  1831.  
  1832.  
  1833.         +--------------------------------------------------------------+
  1834.         |               Appendix D - Special Keys Table                |
  1835.         +--------------------------------------------------------------+
  1836.  
  1837.         This appendix outlines the codes needed to use special keys in
  1838.         the "String Prefix", "String Suffix", "Code Prefix", "Code
  1839.         Suffix", and "Code Delimiter". Special keys can also be used
  1840.         when defining keyboard macros instead of printer options. See
  1841.         section entitled "Keyboard Setup" in "Using The PMF Editor" for
  1842.         details.
  1843.  
  1844.         The table on the following page lists the special keys on the
  1845.         left and the codes needed to define them on the right. For
  1846.         example, to define "F1" and "Enter", you would use "0,59,13".
  1847.  
  1848.  
  1849.  
  1850.  
  1851.  
  1852.  
  1853.  
  1854.  
  1855.  
  1856.  
  1857.  
  1858.  
  1859.  
  1860.  
  1861.  
  1862.  
  1863.  
  1864.  
  1865.  
  1866.  
  1867.  
  1868.  
  1869.  
  1870.  
  1871.  
  1872.  
  1873.  
  1874.  
  1875.  
  1876.  
  1877.  
  1878.  
  1879.  
  1880.  
  1881.  
  1882.  
  1883.  
  1884.  
  1885.  
  1886.  
  1887.  
  1888.  
  1889.         (C) Copyright 1991 Morton Utilities, Morton Intl.        Page 28
  1890.  
  1891.  
  1892.         SPECIAL KEYS TABLE
  1893.         ================================================================
  1894.         Key          Dec   |  Key          Dec   |  Key          Dec
  1895.         ----------------------------------------------------------------
  1896.         Backspace    8     |  Ctrl-F1      0,94  |  Alt-L        0,38
  1897.         Tab          9     |  Ctrl-F2      0,95  |  Alt-Z        0,44
  1898.         Enter        13    |  Ctrl-F3      0,96  |  Alt-X        0,45
  1899.         Escape       27    |  Ctrl-F4      0,97  |  Alt-C        0,46
  1900.         Ctrl-A       1     |  Ctrl-F5      0,98  |  Alt-V        0,47
  1901.         Ctrl-B       2     |  Ctrl-F6      0,99  |  Alt-B        0,48
  1902.         Ctrl-C       3     |  Ctrl-F7      0,100 |  Alt-N        0,49
  1903.         Ctrl-D       4     |  Ctrl-F8      0,101 |  Alt-M        0,50
  1904.         Ctrl-E       5     |  Ctrl-F9      0,102 |  NUL (0)      0,3
  1905.         Ctrl-F       6     |  Ctrl-F10     0,103 |  Shift-Tab    0,15
  1906.         Ctrl-G       7     |  Alt-F1       0,104 |  Home         0,71
  1907.         Ctrl-H       8     |  Alt-F2       0,105 |  UpArrow      0,72
  1908.         Ctrl-I       9     |  Alt-F3       0,106 |  PgUp         0,73
  1909.         Ctrl-J       10    |  Alt-F4       0,107 |  LeftArrow    0,75
  1910.         Ctrl-K       11    |  Alt-F5       0,108 |  RightArrow   0,77
  1911.         Ctrl-L       12    |  Alt-F6       0,109 |  End          0,79
  1912.         Ctrl-M       13    |  Alt-F7       0,110 |  DownArrow    0,80
  1913.         Ctrl-N       14    |  Alt-F8       0,111 |  PgDn         0,81
  1914.         Ctrl-O       15    |  Alt-F9       0,112 |  Insert       0,82
  1915.         Ctrl-P       16    |  Alt-F10      0,113 |  Delete       0,83
  1916.         Ctrl-Q       17    |  Alt-1        0,120 |  Ctrl-PrtSc   0,114
  1917.         Ctrl-R       18    |  Alt-2        0,121 |  Ctrl-LtArrow 0,115
  1918.         Ctrl-S       19    |  Alt-3        0,122 |  Ctrl-RtArrow 0,116
  1919.         Ctrl-T       20    |  Alt-4        0,123 |  Ctrl-End     0,117
  1920.         Ctrl-U       21    |  Alt-5        0,124 |  Ctrl-PgDn    0,118
  1921.         Ctrl-V       22    |  Alt-6        0,125 |  Ctrl-Home    0,119
  1922.         Ctrl-W       23    |  Alt-7        0,126 |  Ctrl-PgUp    0,132
  1923.         Ctrl-X       24    |  Alt-8        0,127 |  F11          0,133
  1924.         Ctrl-Y       25    |  Alt-9        0,128 |  F12          0,134
  1925.         Ctrl-Z       26    |  Alt-0        0,129 |  Shift-F11    0,135
  1926.         F1           0,59  |  Alt-Hyphen   0,130 |  Shift-F12    0,136
  1927.         F2           0,60  |  Alt-=        0,131 |  Ctrl-F11     0,137
  1928.         F3           0,61  |  Alt-Q        0,16  |  Ctrl-F12     0,138
  1929.         F4           0,62  |  Alt-W        0,17  |  Alt-F11      0,139
  1930.         F5           0,63  |  Alt-E        0,18  |  Alt-F12      0,140
  1931.         F6           0,64  |  Alt-R        0,19  |
  1932.         F7           0,65  |  Alt-T        0,20  |
  1933.         F8           0,66  |  Alt-Y        0,21  |
  1934.         F9           0,67  |  Alt-U        0,22  |
  1935.         F10          0,68  |  Alt-I        0,23  |
  1936.         Shift-F1     0,84  |  Alt-O        0,24  |
  1937.         Shift-F2     0,85  |  Alt-P        0,25  |
  1938.         Shift-F3     0,86  |  Alt-A        0,30  |
  1939.         Shift-F4     0,87  |  Alt-S        0,31  |
  1940.         Shift-F5     0,88  |  Alt-D        0,32  |
  1941.         Shift-F6     0,89  |  Alt-F        0,33  |
  1942.         Shift-F7     0,90  |  Alt-G        0,34  |
  1943.         Shift-F8     0,91  |  Alt-H        0,35  |
  1944.         Shift-F9     0,92  |  Alt-J        0,36  |
  1945.         Shift-F10    0,93  |  Alt-K        0,37  |
  1946.         ================================================================
  1947.